Asymmetrical chaotic encryption

ABSTRACT

Implementations and techniques for asymmetrical chaotic encryption are generally disclosed. One disclosed method for asymmetrical encryption includes determining a ciphertext control block from data, where the ciphertext control block is based at least in part on one or more Chebyshev polynomials. The method also includes encrypting at least a portion of the data into an encrypted ciphertext block, where the encrypted ciphertext block is based at least in part on Logistic Mapping, and in which a final ciphertext includes the encrypted ciphertext block and the ciphertext control block

BACKGROUND

Chaotic dynamics techniques have been utilized in encryption. Suchchaotic dynamics techniques have some features such as sensitivedependence on initial conditions, ergodicity, and/or cycle tending toinfinity. Such chaotic dynamics techniques may be utilized to generatepseudo-random numbers under the control of certain parameters.Therefore, chaotic cryptography has aroused extensive attention, andmany scholars have proposed their chaotic cryptosystems in recent years.However, some chaotic cryptosystems based on these chaotic dynamicstechniques may have relatively lengthy encryption times and/or mayproduce resultant ciphertext that may be several times longer ascompared to an initial plaintext file.

SUMMARY

In one embodiment of an asymmetrical encryption process, a ciphertextcontrol block may be determined from data. Such a ciphertext controlblock may be determined based at least in part on one or more Chebyshevpolynomials. Such Chebyshev polynomials may be based at least in part ona public key as well as a randomly generated integer initial valueassociated with a variable parameter. Additionally, at least a portionof the data may be encrypted into an encrypted ciphertext block based atleast in part on Logistic Mapping. Such an asymmetrical encryptionprocess may be utilized to generate a final ciphertext that may includeone or more encrypted ciphertext blocks and one or more ciphertextcontrol blocks.

The foregoing summary is illustrative only and is not intended to be inany way limiting. In addition to the illustrative aspects, embodiments,and features described above, further aspects, embodiments, and featureswill become apparent by reference to the drawings and the followingdetailed description.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example process for asymmetrical chaoticencryption that is arranged in accordance with at least some embodimentsof the present disclosure;

FIG. 2 illustrates another example process for asymmetrical chaoticencryption that is arranged in accordance with at least some embodimentsof the present disclosure;

FIG. 3 illustrates an example process for asymmetrical chaoticdecryption that is arranged in accordance with at least some embodimentsof the present disclosure;

FIG. 4 is an illustration of an example computer program product that isarranged in accordance with at least some embodiments of the presentdisclosure; and

FIG. 5 is a block diagram of an illustrative embodiment of a computingdevice arranged in accordance with the present disclosure.

DETAILED DESCRIPTION

The following description sets forth various examples along withspecific details to provide a thorough understanding of the claimedsubject matter. It will be understood by those skilled in the art,however, that the claimed subject matter may be practiced without someor more of the specific details disclosed herein. Further, in somecircumstances, well-known methods, procedures, systems, componentsand/or circuits have not been described in detail in order to avoidunnecessarily obscuring the claimed subject matter. In the followingdetailed description, reference is made to the accompanying drawings,which form a part hereof. In the drawings, similar symbols typicallyidentify similar components, unless context dictates otherwise. Theillustrative embodiments described in the detailed description,drawings, and claims are not meant to be limiting. Other embodiments maybe utilized, and other changes may be made, without departing from thespirit or scope of the subject matter presented here. It will be readilyunderstood that the aspects of the present disclosure, as generallydescribed herein, and illustrated in the Figures, can be arranged,substituted, combined, separated, and designed in a wide variety ofdifferent configurations, all of which are explicitly contemplated andmake part of this disclosure.

This disclosure is drawn, inter alia, to methods, apparatus, and systemsrelated to asymmetrical chaotic encryption.

Asymmetrical chaotic encryption algorithms for secure communication onthe basis of Chebyshev polynomials and Logistic Mapping are describedbelow. As used herein, the term “asymmetrical” may refer to processeswhere a public key and a private key are asymmetric and unequal. Forexample, an asymmetric key encryption scheme may be designed so thatanyone can encrypt messages using a public key, but only the holder ofthe paired private key can decrypt. As used herein, the term “chaotic”may refer to processes that include dynamical systems that may be highlysensitive to initial conditions.

In one example, such an asymmetrical chaotic encryption algorithm mayutilize a public key for encryption operations. Additionally oralternatively, such an asymmetrical chaotic encryption algorithm mayinclude a private key for decryption operations. Additionally oralternatively, such an asymmetrical chaotic encryption algorithm mayinclude a mixture of key encryption and block encryption.

FIG. 1 illustrates an example process for asymmetrical encryption thatis arranged in accordance with at least some embodiments of the presentdisclosure. In the illustrated example, process 100, and other processesdescribed herein, set forth various functional blocks or actions thatmay be described as processing steps, functional operations, eventsand/or acts, etc., which may be performed by hardware, software, and/orfirmware. Those skilled in the art in light of the present disclosurewill recognize that numerous alternatives to the functional blocks shownin FIG. 1 may be practiced in various implementations. For example,although process 100, as shown in FIG. 1, includes one particular orderof blocks or actions, the order in which these blocks or actions arepresented does not necessarily limit claimed subject matter to anyparticular order. Likewise, intervening actions not shown in FIG. 1and/or additional actions not shown in FIG. 1 may be employed and/orsome of the actions shown in FIG. 1 may be eliminated, without departingfrom the scope of claimed subject matter. Process 100 may include one ormore of operations as illustrated by blocks 102 and/or 104.

As illustrated, process 100 may be implemented for asymmetricalencryption. Processing may begin at operation 102, “determine aciphertext control block”, where a ciphertext control block may bedetermined. For example, a ciphertext control block may be determinedfrom data (e.g., a plaintext file) and may be based at least in part onone or more Chebyshev polynomials. Additional details regarding exampleimplementations of ciphertext control blocks and Chebyshev polynomialsmay be found below in the discussion of FIG. 2. As will be discussed ingreater detail in conjunction with FIG. 2, the one or more Chebyshevpolynomials may be based at least in part on a public key as well as arandomly generated integer initial value associated with a variableparameter.

Processing may continue from operation 102 to operation 104, “encrypt atleast a portion of the data into an encrypted ciphertext block”, whereat least a portion of the data is encrypted into an encrypted ciphertextblock. For example, at least a portion of the data may be encrypted intoan encrypted ciphertext block based at least in part on LogisticMapping. Additional details regarding example implementations of theencrypted ciphertext block and Logistic Mapping may be found below inthe discussion of FIG. 2.

In one example, process 100 may be utilized to generate a finalciphertext that includes one or more encrypted ciphertext blocks and oneor more ciphertext control blocks. For example, the variable parametermay be modified and one or more subsequent Chebyshev polynomials as wellas a subsequent finally encrypted ciphertext block may be determinedbased at least in part on the modified variable parameter. In oneexample, the modified variable parameter may be modified based at leastin part on the Logistic Mapping performed during the formation of theencrypted ciphertext block. One or more iterations of modifying thevariable parameter may be performed until all of the data has beenencrypted.

FIG. 2 illustrates another example process for asymmetrical chaoticencryption that is arranged in accordance with at least some embodimentsof the present disclosure. Process 200 may include one or more ofoperations as illustrated by blocks 202, 204, 206, 208, 210, 212, 214,216, 218, 220, 224, 226, and/or 228.

Process 200 may provide one or more examples of implementations ofprocess 100 of FIG. 1. As illustrated, process 200 may be implementedfor asymmetrical chaotic encryption. Processing may begin at operation202, “determine a public key”, where a public key may be determined. Forexample, a public key may be determined based at least in part on aprivate key.

In one example, a public key (x,PK) may be determined based at least inpart on a Chebyshev polynomial based at least in part on a private keySK. In this example, a randomly generated integer SK (SK≠1) and arandomly generated integer x (x ε F_(p), x≠I), may be utilized tocompute:PK=T _(SK)(x)(mod P)

In the above calculation, F_(p) may represent a finite field, T_(SK) mayrepresent a Chebyshev polynomial of degree SK, and P may represent aprime number. The finite field F_(p) may be utilized to expand theChebyshev polynomial T_(SK) to this finite field F_(p). The prime numberP may be a relatively large prime number, which may be used to computethe Chebyshev polynomial T_(SK) and a public key (x,PK). Because thepublic key (x,PK) utilized as the encryption key may not decrypt aresultant ciphertext while plaintexts are encrypted, the asymmetricalchaotic encryption algorithm represented by process 200 may include theprivate key SK for decryption operations.

Processing may continue from operation 202 to operation 204, “determineone or more Chebyshev polynomials”, where one or more Chebyshevpolynomials may be determined. For example, one or more Chebyshevpolynomials of degree R₀ (T_(R0)) may be determined.

In one example, one or more Chebyshev polynomials of degree R₀ (T_(R0))may be determined based at least in part on the determined public key(x,PK). In this example, a randomly generated integer R₀ (which may beconsiderer as an initial value for a variable parameter R_(i)) and thedetermined public key (x,PK) may be utilized to compute a firstChebyshev polynomial T_(R0)(PK) mod P and a second Chebyshev polynomialT_(R0)(x) mod P. In the above calculation, R₀ may represent randomlygenerated integer, where such a randomly generated integer may be sizedto be larger than 10,000, for example.

Processing may continue from operation 204 to operation 206, “determinea ciphertext control block”, where a ciphertext control block may bedetermined. For example, a first ciphertext control block C_(C0) may bedetermined based at least in part on the determined public key (x,PK)and/or the determined one or more Chebyshev polynomials of degree R₀, aswill be illustrated in greater detail below.

In one example, a plaintext file may be divided into one or moresubsequences. Such subsequences may have a designated length of L bytes.In the illustrated example, a value of eight was used for L, however,other values may be utilized. Accordingly, where the plaintext file maybe represented by: p₀ p₁ . . . p_(L-1) PL . . . p_(2L-1) p_(2L) . . . ,the plaintext file may be divided into one or more subsequences. Forexample, the plaintext file may be divided into a first subsequence ω₀(p₀ p₁ . . . p_(L-1)), a second subsequence ω₁ (p_(L) . . . p_(2L-1)),and the like.

Additionally, the bytes of individual subsequences may be combined toform a binary plaintext message block. For example, p_(i) may representthe value of the jth byte of a given subsequence ω₀. In an example wherea value of eight was used for L, eight bytes of plaintext(p_(j)+p_(j+1)+ . . . +p_(j+7)) may be combined to form a binaryplaintext message block P_(j).

Additionally, a block number M may be determined. For example, the blocknumber M may be determined based at least in part on the length of theplaintext file to be encrypted and the length L of the subsequences ω₀.In an example where a value of eight was used for L, the block numberM=(l/8)+1, where l may represent the length of the plaintext file to beencrypted.

Additionally, a ciphertext control parameter m₀ may be determined. Forexample, the ciphertext control parameter m₀ may be determined based atleast in part on block number M and/or the randomly generated integerR₀. In one example, the ciphertext control parameter m₀=R₀ (mod M). Sucha ciphertext control parameter m₀ may be utilized to control thecalculation of the Logistic Map initial value k₀. The operation ofLogistic Mapping as well as the Logistic Map initial value k₀ will bediscussed in greater detail below with respect to operation 208.

As discussed above, the first ciphertext control block C_(C0) may bedetermined based at least in part on the determined public key (x,PK)and/or the determined one or more Chebyshev polynomials of degree R₀.For example, the determined public key (x,PK) and/or the determined oneor more Chebyshev polynomials of degree R₀ may be utilized to computethe first ciphertext control block C_(C0) as follows:C _(C0)=(m ₀ ·T _(R0)(PK)mod P, T _(R0)(x)mod P)

Processing may continue from operation 206 to operation 208, “determinea Logistic Map value”, where a Logistic Map value may be determined. Asused herein the term “Logistic Map” may refer to a type of polynomialmapping of degree two that may mimic complex, chaotic behavior throughnon-linear dynamical equations. For example, the Logistic Map initialvalue k₀ (e.g., an initial value calculated from Logistic Mapping) maybe determined based at least in part on the determined ciphertextcontrol parameter m₀. (e.g., the ciphertext control parameter m₀ itselfmay be based at least in part on the variable parameter R₀, as discussedin greater detail above). In one example, the ciphertext controlparameter m₀ may be utilized to compute the Logistic Map initial valuek₀ as follows:k ₀ =m ₀ /P(m ₀ <P), P/m ₀(m ₀ >P), 0.1666666667 (m ₀ =P)

The Logistic Map initial value k₀ may be utilized in subsequentiterations of the Logistic Map. Such subsequent iterations of theLogistic Map may be utilized to encrypt one or more additional plaintextblocks, as described in greater detail at operation 218 below. Forexample, in subsequent iterations, a Logistic Map iteration value ω(e.g. a subsequent value determined from Logistic Mapping associatedwith the iteration represented by operation 218) may be determined basedat least in part on the determined Logistic Map initial value k₀. In oneexample, the Logistic Map initial value k₀ may be utilized to computethe Logistic Map iteration value ω as follows:ω=τ^(N) ⁰ (k ₀)

In the above calculation, the Logistic Map iteration value w mayrepresent a value of the Logistic Map initial value k₀ after N₀iterations. Further, in the above calculation, τ may represent aLogistic Map function τ(x). The Logistic Map function τ(x) may beutilized to generate a pseudo-random sequence as follows:τ(x)=μx(1−x), xε[0,1], με[3.5699456,4]

Processing may continue from operation 208 to operation 210, “determinea secret key”, where a secret key may be determined. For example, asecret key A_(j) may be determined based at least in part on theLogistic Map function τ(x) and/or Logistic Map iteration value ω (e.g.,the Logistic Map iteration value ω may represent a value of Logistic Mapinitial value k₀ after N₀ iterations).

In one example, binary sequences may be generated based on the onedimension Logistic Map function τ(x). For example, the Logistic Mapfunction τ(x) may be iterated a number of times (e.g., seventy times) toobtain a binary sequence (e.g., B_(i) ¹ B_(i) ² B_(i) ³ . . . B_(i) ⁶⁴B_(i) ⁶⁵ . . . B_(i) ⁶⁹ B_(i) ⁷⁰). Such a binary sequence (e.g., B_(i) ¹B_(i) ² B_(i) ³ . . . B_(i) ⁶⁴ B_(i) ⁶⁵ . . . B_(i) ⁶⁹ B_(i) ⁷⁰) may beformed by adding an ith bit selected from each iteration of the LogisticMap function τ(x).

The secret key A_(j) and the shift integer D_(j) may be determined basedat least in part on the binary sequence (e.g., B_(i) ¹ B_(i) ² B_(i) ³ .. . B_(i) ⁶⁴ B_(i) ⁶⁵ . . . B_(i) ⁷⁰). In one example, the binarysequence (e.g., B_(i) ¹ B_(i) ² B_(i) ³ . . . B_(i) ⁶⁴ B_(i) ⁶⁵ . . .B_(i) ⁶⁹ B_(i) ⁷⁰) may be divided into parts. One such part of thebinary sequence (e.g., B_(i) ¹ B_(i) ² B_(i) ³ . . . B_(i) ⁶⁴ B_(i) ⁶⁵ .. . B_(i) ⁶⁹ B_(i) ⁷⁰) may be the first sixty-four bits (or some othersuitable number of bits), which may be utilized to determine the secretkey A_(j) as follows:A_(j)=B_(i) ¹ B_(i) ² B_(i) ³ . . . B_(i) ⁶⁴

Another such part of binary sequence (e.g., B_(i) ¹ B_(i) ² B_(i) ³ . .. B_(i) ⁶⁴ B_(i) ⁶⁵ . . . B_(i) ⁶⁹ B_(i) ⁷⁰) may be last six bits (orsome other suitable number of bits), which may be utilized to determinepart A′_(j)=B_(i) ⁶⁵ . . . B_(i) ⁶⁹ B_(i) ⁷⁰. The part A′_(j) may beconverted into the shift integer D_(j), which may be less thansixty-four bits and which may represent the decimal form of such a partof binary sequence (e.g., B_(i) ¹ B_(i) ² B_(i) ³ . . . B_(i) ⁶⁴ B_(i)⁶⁵ . . . B_(i) ⁶⁹ B_(i) ⁷⁰).

Processing may continue from operation 210 to operation 212, “determinean encrypted ordinary plaintext block” where an encrypted ordinaryplaintext block may be determined. For example, an encrypted ordinaryplaintext block C_(j) may be determined based at least in part on theshift integer D_(j) and/or the secret key A_(j).

In one example, the binary plaintext message block P_(j) may be shifted(e.g., with left cycle shifting) based on the shift integer D_(j) bitsto obtain a new shifted message block P′_(j). The secret key A_(j) maybe utilized to compute an encrypted ordinary plaintext block C_(j) asfollows based on the shifted message block P′_(j):C_(j)=P′_(j) ⊕ A_(j)

In the above calculation, ⊕ may represent a XOR-type operation. As aresult, the encrypted ordinary plaintext block C_(j) of the binaryplaintext message block P^(j) may be obtained.

Processing may continue from operation 212 to operation 214, “determinea finally encrypted ciphertext block”, where a finally encryptedciphertext block may be determined. For example, a finally encryptedciphertext block C″_(j) may be determined based at least in part on theshift integer D_(j) and/or the secret key A_(j).

In one example, the encrypted ordinary plaintext block C_(j) may bedivided into one or more partitions (e.g., into eight-bit partitions).For example, the encrypted ordinary plaintext block C_(j) may be dividedinto a first encrypted partition (c₀ c₁ . . . c_(L-1)), a secondencrypted partition (c_(L) . . . c_(2L-1)) and the like. Accordingly,the encrypted partition c_(j)+c_(j+1)+ . . . +c_(j+7) of thecorresponding plaintext subsequence p_(j)+p_(j+1)+ . . . +p_(j+7) may beobtained. Then all the encrypted partition portions of the encryptedordinary plaintext block C_(j) may be computed with function mapping asfollows:f(C _(j))=c _(j) +c _(j+1) +. . . +c _(j+7),

In the above calculation, the function mapping f(C_(j)) may be utilizedto integrate the encrypted ordinary plaintext block C_(j), which may beconductive to information storage. After the function mapping, thefollowing operations may be performed:D*=D _(j) +f(C _(j))mod 64,C′ _(j) =F(C _(j) , D _(j)) ⊕ A _(j),D*=D _(j) +f(C′ _(j))mod 64,C″ _(j) =F(C′ _(j) , D _(j)) ⊕ A _(j).

In the above calculations, the encrypted ordinary plaintext block C_(j)may be shifted (e.g., with left cycle shifting) based on the shiftinteger D_(j) bits during the calculation of an intermediate encryptedordinary plaintext block C′_(j), which may in turn be shifted (e.g.,with left cycle shifting) based on the shift integer D_(j) bits duringthe calculation of the finally encrypted ciphertext block C″_(j).Similarly, the encrypted ordinary plaintext block C_(j) may be encryptedbased on the secret key A_(j) during the calculation of the intermediateencrypted ordinary plaintext block C′_(j), which may in turn beencrypted based on the secret key A_(j) during the calculation of thefinally encrypted ciphertext block C″_(j). In the above calculations, D*may represent a variable which is associated with a transformation ofthe shift integer D_(j) variable.

Additionally, in the above calculations, a modified shift integer D* maybe determined. For example, the modified shift integer D* may bedetermined based at least in part on the shift integer D_(j) andfunction mapping of the intermediate encrypted ordinary plaintext blockC′_(j). Such a modified shift integer D* may be utilized to control theiteration times of the Logistic Map.

Processing may continue from operation 214 to operation 216, “determineif a given number of plaintext blocks have been encrypted”, where adetermination may be made as to whether a given number of plaintextblocks have been encrypted. In cases where a given number of plaintextblocks (e.g., m_(i-1) (i>2)) are not determined to have been encrypted,processing may continue from operation 216 to operation 218, “updateLogistic Map iteration value”, where the Logistic Map iteration valuemay be updated. For example, the Logistic Map iteration value ω may beupdated as follows:ω=τ^(D*+70)(k _(i))

In the above calculation, the updated Logistic Map iteration value ω maybe updated based on a Logistic Map value k_(i) associated with thecurrent iteration and/or based on the modified shift integer D* (e.g.,the modified shift integer D* itself may be based at least in part onthe shift integer D_(j), as discussed in greater detail above). Theupdated Logistic Map iteration value ω may be utilized in subsequentiterations of the Logistic Map. Processing may continue from operation218 back to operations 208-216, which have been previously described.Operations 208-216 may proceed to process one or more additionalplaintext blocks with the updated Logistic Map iteration value ω.

In cases where a given number of plaintext blocks (e.g., m_(i-1) (i>2))are determined to have been encrypted, processing may continue fromoperation 216 to operation 220, “determine if all of the plaintext filehas been encrypted”, where a determination may be made as to whether allof the plaintext file has been encrypted. In cases where it isdetermined that all of the plaintext file has been encrypted, process200 completes.

In cases where it is determined that all of the plaintext file has notbeen encrypted, process 200 may proceed from operation 220 to operation224, “determine one or more subsequent Chebyshev polynomials”, where oneor more subsequent Chebyshev polynomials may be determined. For example,one or more subsequent Chebyshev polynomials of degree R_(i) (T_(Ri))may be determined based at least in part on a modified variableparameter R_(i). In one example, the modified variable parameter R_(i)may be determined based at least in part on a prior variable parameterR_(i-1) (e.g., the initial variable parameter R₀) and/or the modifiedshift integer D* (e.g., the modified shift integer D* itself may bebased at least in part on the shift integer D_(j), as discussed ingreater detail above). The modified variable parameter R_(i) may bedetermined as follows based on the prior variable parameter R_(i-1)(e.g., the initial variable parameter R₀) and the modified shift integerD*:R _(i) =R _(i-1) +D*,

In the above calculation, the modified variable parameter R_(i) may besubject to random perturbation. In one example, one or more subsequentChebyshev polynomials of degree R_(i) (T_(Ri)) may be determined basedat least in part on the determined public key (x,PK). In this example,the modified variable parameter R_(i) and the determined public key(x,PK) may be utilized to compute a first subsequent Chebyshevpolynomial T_(Ri)(PK) mod P and a second subsequent Chebyshev polynomialT_(Ri)(x) mod P.

Processing may continue from operation 224 to operation 226, “determinea subsequent ciphertext control block”, where a subsequent ciphertextcontrol block may be determined. For example, a subsequent ciphertextcontrol block C_(Ci) may be determined based at least in part on thedetermined public key (x,PK) and/or the determined one or more Chebyshevpolynomials of degree R_(i), as will be illustrated in greater detailbelow.

In one example, a subsequent ciphertext control parameter m_(i) may bedetermined. For example, the subsequent ciphertext control parameterm_(i) may be determined based at least in part on the block number Mand/or the modified variable parameter R_(i). In one example, thesubsequent ciphertext control parameter m_(i)=(m_(i-1)+D*) mod M. Such asubsequent ciphertext control parameter m_(i) may be utilized to controlthe calculation of a Logistic Map subsequent value k_(i). The operationof the Logistic Mapping as well as the Logistic Map subsequent valuek_(i) will be discussed in greater detail below with respect tooperation 228.

As discussed above, the subsequent ciphertext control block C_(Ci) maybe determined based at least in part on the determined public key (x,PK)and/or the determined one or more Chebyshev polynomials of degree R_(i).For example, the determined public key (x,PK) and/or the determined oneor more Chebyshev polynomials of degree R_(i) may be utilized to computethe subsequent ciphertext control block C_(Ci) as follows:C _(Ci)=(m _(i) ·T _(Ri)(PK)mod P, T _(Ri)(x)mod P),

Processing may continue from operation 226 to operation 228, “determinea subsequent Logistic Map value”, where a subsequent Logistic Map valuemay be determined. For example, the Logistic Map subsequent value k_(i)may be determined based at least in part on the determined subsequentciphertext control parameter m_(i). In one example, the subsequentciphertext control parameter m_(i) may be utilized to compute theLogistic Map subsequent value k_(i) as follows:k _(i) =m _(i) /P(m _(i) <P), P m _(i)(m _(i) >P), 0.1666666667 (m _(i)=P)

The Logistic Map subsequent value k_(i) may be utilized in subsequentiterations of the Logistic Map. In subsequent iterations, an updatedLogistic Map iteration value ω may be determined based at least in parton the determined Logistic Map subsequent value k_(i). In one example,the Logistic Map subsequent value k₁ may be utilized to compute theupdated Logistic Map iteration value ω as follows:ω=τ^(N) ⁰ (k _(i))

Processing may continue from operation 228 back to operations 208-216,which have been previously described. Operations 208-216 may proceed toprocess one or more additional plaintext blocks with the updatedLogistic Map iteration value ω.

In operation, process 200 may utilize the ciphertext control blocksC_(Ci) generated by usage of Chebyshev polynomials and the finallyencrypted ciphertext block C″_(j) generated by usage of Logistic Mappingto encrypt the binary plaintext message block P_(j). Process 200 mayutilize the ciphertext control blocks C_(Ci) to conceal the ciphertextcontrol parameters m_(i) and the Logistic Map values k_(i). Likewise,process 200 may utilize the finally encrypted ciphertext block C″_(j),encrypted by the Logistic mapping, to conceal the plaintext itself. Fora final ciphertext including both the ciphertext control blocks C_(Ci)and the finally encrypted ciphertext blocks C″_(j), the make-up of theboth the ciphertext control blocks C_(Ci) and the finally encryptedciphertext blocks C″_(j) may be similar in nature (e.g., the Eigenvalues may not be obvious). For example, the distribution of theciphertext control blocks C_(Ci) may be random, thereby process 200 maycut off the continuity of the finally encrypted ciphertext blocksC″_(j).

Process 200 may operate in such a way that the finally encryptedciphertext block C″_(j) may be dependent on the original plaintext file.Further, process 200 may operate in such a way that the key streams ofthe secret key A_(j) generated by the same initial value are not thesame. Process 200 may operate to combine a generation of the public key(x,PK) that is extended to the finite field F_(p) with a generation ofthe key stream of different secret keys A_(j), which may be dependent onthe plaintext file to continually change initial values that generatethe key stream of the secret keys A_(j). Further, the initial key valueof the secret keys A_(j) may not be displayed to a user on theencryption side or decryption side, but only in the encryption anddecryption procedures, which may enhance the concealment performance ofinformation.

In addition, process 200 may utilize Logistic Mapping so that when thesecret key A_(j) generated by the Logistic Mapping is used to encryptthe binary plaintext message block P_(j), the statistical properties maybe disappeared or reduced, and the chaotic disorder of such LogisticMapping can make differences of the key streams of the secret key A_(j)quite obvious. Regarding the chaotic disorder of such Logistic Mapping,a histogram of the key streams of the secret key A_(j) may be relativelyuniform and may be significantly different from that of other keystreams. These two features (i.e., the reduction of the statisticalproperties and the chaotic disorder) may make it difficult to decipher afinal ciphertext (including both the ciphertext control blocks C_(Ci)and the finally encrypted ciphertext blocks C″_(j)). For example,process 200 may utilize the random variable perturbation parameter R_(i)as a feature of this algorithm. As discussed above, the random variableperturbation parameter R_(i) may be generated randomly. Additionally,each binary plaintext message block P_(j) may be encrypted multipletimes to reach the finally encrypted ciphertext block C″_(j). Thecombination of process 200 utilizing random generation of the randomvariable perturbation parameter R_(i) with the multiple encryptions ofeach binary plaintext message block P_(j) may result in the length ofthe finally encrypted ciphertext block C″_(j) not being a consistentlength. Accordingly, process 200 may resist analysis methods oftraditional cryptography, as each time that the value of random variableperturbation parameter R_(i) is different, then the individual finallyencrypted ciphertext blocks C″_(j) may likewise be different, so it maybe difficult to decipher a final ciphertext (including both theciphertext control blocks C_(Ci) and the finally encrypted ciphertextblocks C″_(j)) through a chosen-ciphertext attack or chosen-plaintextattack.

FIG. 3 illustrates an example process for asymmetrical chaoticdecryption that is arranged in accordance with at least some embodimentsof the present disclosure. Process 300 may include one or more ofoperations as illustrated by blocks 302, 304, 306, and/or 308.

As illustrated, process 300 may be implemented for asymmetrical chaoticdecryption. As discussed above, process 200 (FIG. 2) may utilize theciphertext control blocks C_(Ci) to conceal the ciphertext controlparameters m_(i) and the Logistic Map values k_(i), and may utilize thefinally encrypted ciphertext block C″_(j), encrypted by the Logisticmapping, to conceal the plaintext itself. Similarly, process 300 mayutilize the ciphertext control blocks C_(Ci) to retrieve the ciphertextcontrol parameters m_(i) and the Logistic Map values k_(i), and mayutilize the finally encrypted ciphertext block C″_(j), encrypted by theLogistic mapping, to retrieve the plaintext itself.

Processing may begin at operation 302, “retrieve the ciphertext controlparameter and/or Logistic Map value”, where the ciphertext controlparameter and/or the Logistic Map value may be retrieved. For example,the ciphertext control parameter m₀ and/or the Logistic Map initialvalue k₀ may be retrieved from the first ciphertext control blockC_(C0). In one example, the first ciphertext control block C_(C0) may bedecrypted using the private key SK to compute:m ₀ =m ₀ ·T _(R0)(PK)mod P/T _(SK)(T _(R0)(x)mod P)mod Pk ₀ =m ₀ /P(m ₀ <P), P/m ₀(m ₀ >P), 0.1666666667 (m ₀ =P)

In the above calculations, the ciphertext control parameter m₀ and/orthe Logistic Map initial value k₀ may be retrieved from the firstciphertext control block C_(C0). The retrieved ciphertext controlparameter m₀ and/or the Logistic Map initial value k₀ may be utilized todecrypt the subsequent ciphertext control block C_(Ci).

Processing may continue from operation 302 to operation 304, “retrieveplaintext block” where a plaintext block may be retrieved. For example,retrieving a plaintext block from the one or more finally encryptedciphertext block C″_(j), may be based at least in part on the retrievedLogistic Map initial value k₀. As discussed above, a secret key A_(j)may be determined based at least in part on the Logistic Map functionτ(x) and/or the Logistic Map iteration value ω (e.g., the Logistic Mapiteration value ω may represent a value of Logistic Map initial value k₀after N₀ iterations). An encrypted ordinary plaintext block C_(j) may bedecrypted based at least in part on the shift integer D_(j) and/or thesecret key A_(j) to obtain the binary plaintext message block P_(j).

In one example, the secret key A_(j) may be utilized to compute theshifted message block P′_(j) based on the encrypted ordinary plaintextblock C_(j) as follows:P′_(j)=C_(j) ⊕ A_(j)

In the above calculation, the encrypted ordinary plaintext block C_(j)of the binary plaintext message block P_(j) may be decrypted to computethe shifted message block P′_(j). The shifted message block may beun-shifted (e.g., with right cycle shifting) based on the shift integerD_(j) bits to obtain the binary plaintext message block P_(j). TheLogistic Mapping may then be iterated (e.g., iterated D* times), untilreaching the m₁ block.

Processing may continue from operation 304 to operation 306, “determineif a given number of plaintext blocks have been decrypted”, where adetermination may be made as to whether a given number of plaintextblocks have been decrypted. In cases where a given number of plaintextblocks (e.g., m₁ (i>2)) are not determined to have been decrypted,processing may continue from operation 306 back to operation 304“retrieve plaintext block”, which has been previously described. Forexample, the Logistic Map value k_(i) may be updated based at least inpart on the shift integer D_(j) and utilized to retrieve an additionalplaintext block. An iteration of updating the Logistic Map value k_(i)may be performed until a given number of plaintext blocks are decrypted.

In cases where a given number of plaintext blocks (e.g., m_(i-1) (i>2))are determined to have been decrypted, processing may continue fromoperation 306 to operation 308, “determine if all of the plaintext filehas been decrypted”, where a determination may be made as to whether allof the plaintext file has been decrypted. In cases where it isdetermined that all of the plaintext file has been decrypted, process300 completes.

In cases where it is determined that all of the plaintext file have notbeen decrypted, process 300 may proceed from operation 308 back tooperation 302 “retrieve the ciphertext control parameter and/or LogisticMap value”, which has been previously described. For example, aniteration of retrieving of a subsequent Logistic map value from asubsequent ciphertext control block may be performed until all of theplaintext file has been decrypted.

Referring to FIG. 1, FIG. 2 and FIG. 3, certain aspects regardingprocess 300 have not been described in detail. For example, it will beappreciated that operations 302 and/or 304 may utilize all or portionsof process 200 to perform the decryption process 300. The decryptionprocess 300 may operate in a manner similar to the encryption process200. For example, the decryption process 300 may utilize a reversal ofthe same or similar operations as described in operations 208, 210, 212,214 and/or 218 to reverse the encryption performed by encryption process200.

In operation, the processes 100, 200, and/or 300 may be utilized inembedded devices, mobile phones, portable devices, and/or the like. Theprocesses 100, 200, and/or 300 may be utilized to protect personalprivacy and/or applied to secure communications. For example, theprocesses 100, 200, and/or 300 may be utilized to protect personalprivacy of image files. Further, the processes 100, 200, and/or 300 maybe utilized in equipment that may have relatively low computingcapabilities, because of the relatively fast speed of encryption anddecryption.

FIG. 4 illustrates an example computer program product 400 that isarranged in accordance with at least some embodiments of the presentdisclosure. Computer program product 400 may include a signal bearingmedium 402. Signal bearing medium 402 may include one or moremachine-readable instructions 404, which, when executed by one or moreprocessors, may operatively enable a computing device to provide thefunctionality described above with respect to FIG. 1, FIG. 2 and/or FIG.3. Thus, for example, one or more of the actions shown in FIG. 1, FIG. 2and/or FIG. 3 may be undertaken in response to instructions 404 conveyedby medium 402.

In some implementations, signal bearing medium 402 may encompass acomputer-readable medium 406, such as, but not limited to, a hard diskdrive, a Compact Disc (CD), a Digital Video Disk (DVD), a digital tape,memory, etc. In some implementations, signal bearing medium 402 mayencompass a recordable medium 408, such as, but not limited to, memory,read/write (R/W) CDs, R/W DVDs, etc. In some implementations, signalbearing medium 402 may encompass a communications medium 410, such as,but not limited to, a digital and/or an analog communication medium(e.g., a fiber optic cable, a waveguide, a wired communication link, awireless communication link, etc.).

FIG. 5 is a block diagram of an illustrative embodiment of a computingdevice 500 that is arranged in accordance with the present disclosure.In one example basic configuration 501, computing device 500 may includeone or more processors 510 and a system memory 520. A memory bus 530 canbe used for communicating between the processor 510 and the systemmemory 520.

Depending on the desired configuration, processor 510 may be of any typeincluding but not limited to a microprocessor (μP), a microcontroller(μC), a digital signal processor (DSP), or any combination thereof.Processor 510 can include one or more levels of caching, such as a levelone cache 511 and a level two cache 512, a processor core 513, andregisters 514. Processor core 513 can include an arithmetic logic unit(ALU), a floating point unit (FPU), a digital signal processing core(DSP Core), or any combination thereof. A memory controller 515 can alsobe used with processor 510, or in some implementations memory controller515 can be an internal part of processor 510.

Depending on the desired configuration, the system memory 520 may be ofany type including but not limited to volatile memory (such as RAM),non-volatile memory (such as ROM, flash memory, etc.) or any combinationthereof. System memory 520 may include an operating system 521, one ormore applications 522, and program data 524. Application 522 may includeasymmetrical chaotic encryption algorithm 523 that can be arranged toperform the functions, actions, and/or operations as described hereinincluding the functional blocks, actions, and/or operations describedwith respect to process 100 of FIG. 1, process 200 of FIG. 2 and/orprocess 300 of FIG. 3. Program Data 524 may include plaintext file data525 for use with the asymmetrical chaotic encryption algorithm 523. Insome example embodiments, application 522 may be arranged to operatewith program data 524 on an operating system 521 such thatimplementations of asymmetrical chaotic encryption of plaintext filedata may be provided as described herein. This described basicconfiguration is illustrated in FIG. 5 by those components within dashedline 501.

Computing device 500 may have additional features or functionality, andadditional interfaces to facilitate communications between basicconfiguration 501 and any required devices and interfaces. For example,a bus/interface controller 540 may be used to facilitate communicationsbetween basic configuration 501 and one or more data storage devices 550via a storage interface bus 541. Data storage devices 550 may beremovable storage devices 551, non-removable storage devices 552, or acombination thereof. Examples of removable storage and non-removablestorage devices include magnetic disk devices such as flexible diskdrives and hard-disk drives (HDD), optical disk drives such as compactdisk (CD) drives or digital versatile disk (DVD) drives, solid statedrives (SSD), and tape drives to name a few. Example computer storagemedia may include volatile and nonvolatile, removable and non-removablemedia implemented in any method or technology for storage ofinformation, such as computer readable instructions, data structures,program modules, or other data.

System memory 520, removable storage 551 and non-removable storage 552are all examples of computer storage media. Computer storage mediaincludes, but is not limited to, RAM, ROM, EEPROM, flash memory or othermemory technology, CD-ROM, digital versatile disks (DVD) or otheroptical storage, magnetic cassettes, magnetic tape, magnetic diskstorage or other magnetic storage devices, or any other medium which maybe used to store the desired information and which may be accessed bycomputing device 500. Any such computer storage media may be part ofdevice 500.

Computing device 500 may also include an interface bus 542 forfacilitating communication from various interface devices (e.g., outputinterfaces, peripheral interfaces, and communication interfaces) tobasic configuration 501 via bus/interface controller 540. Example outputinterfaces 560 may include a graphics processing unit 561 and an audioprocessing unit 562, which may be configured to communicate to variousexternal devices such as a display or speakers via one or more A/V ports563. Example peripheral interfaces 570 may include a serial interfacecontroller 571 or a parallel interface controller 572, which may beconfigured to communicate with external devices such as input devices(e.g., keyboard, mouse, pen, voice input device, touch input device,etc.) or other peripheral devices (e.g., printer, scanner, etc.) via oneor more I/O ports 573. An example communication interface 580 includes anetwork controller 581, which may be arranged to facilitatecommunications with one or more other computing devices 590 over anetwork communication via one or more communication ports 582. Acommunication connection is one example of a communication media.Communication media may typically be embodied by computer readableinstructions, data structures, program modules, or other data in amodulated data signal, such as a carrier wave or other transportmechanism, and may include any information delivery media. A “modulateddata signal” may be a signal that has one or more of its characteristicsset or changed in such a manner as to encode information in the signal.By way of example, and not limitation, communication media may includewired media such as a wired network or direct-wired connection, andwireless media such as acoustic, radio frequency (RF), infrared (IR) andother wireless media. The term computer readable media as used hereinmay include both storage media and communication media.

Computing device 500 may be implemented as a portion of a small-formfactor portable (or mobile) electronic device such as a cell phone, apersonal data assistant (PDA), a personal media player device, awireless web-watch device, a personal headset device, an applicationspecific device, or a hybrid device that includes any of the abovefunctions. Computing device 500 may also be implemented as a personalcomputer including both laptop computer and non-laptop computerconfigurations. In addition, computing device 500 may be implemented aspart of a wireless base station or other wireless system or device.

Some portions of the foregoing detailed description are presented interms of algorithms or symbolic representations of operations on databits or binary digital signals stored within a computing system memory,such as a computer memory. These algorithmic descriptions orrepresentations are examples of techniques used by those of ordinaryskill in the data processing arts to convey the substance of their workto others skilled in the art. An algorithm is here, and generally, isconsidered to be a self-consistent sequence of operations or similarprocessing leading to a desired result. In this context, operations orprocessing involve physical manipulation of physical quantities.Typically, although not necessarily, such quantities may take the formof electrical or magnetic signals capable of being stored, transferred,combined, compared or otherwise manipulated. It has proven convenient attimes, principally for reasons of common usage, to refer to such signalsas bits, data, values, elements, symbols, characters, terms, numbers,numerals or the like. It should be understood, however, that all ofthese and similar terms are to be associated with appropriate physicalquantities and are merely convenient labels. Unless specifically statedotherwise, as apparent from the following discussion, it is appreciatedthat throughout this specification discussions utilizing terms such as“processing,” “computing,” “calculating,” “determining” or the likerefer to actions or processes of a computing device, that manipulates ortransforms data represented as physical electronic or magneticquantities within memories, registers, or other information storagedevices, transmission devices, or display devices of the computingdevice.

Claimed subject matter is not limited in scope to the particularimplementations described herein. For example, some implementations maybe in hardware, such as employed to operate on a device or combinationof devices, for example, whereas other implementations may be insoftware and/or firmware. Likewise, although claimed subject matter isnot limited in scope in this respect, some implementations may includeone or more articles, such as a signal bearing medium, a storage mediumand/or storage media. This storage media, such as CD-ROMs, computerdisks, flash memory, or the like, for example, may have instructionsstored thereon, that, when executed by a computing device, such as acomputing system, computing platform, or other system, for example, mayresult in execution of a processor in accordance with claimed subjectmatter, such as one of the implementations previously described, forexample. As one possibility, a computing device may include one or moreprocessing units or processors, one or more input/output devices, suchas a display, a keyboard and/or a mouse, and one or more memories, suchas static random access memory, dynamic random access memory, flashmemory, and/or a hard drive.

There is little distinction left between hardware and softwareimplementations of aspects of systems; the use of hardware or softwareis generally (but not always, in that in certain contexts the choicebetween hardware and software can become significant) a design choicerepresenting cost vs. efficiency tradeoffs. There are various vehiclesby which processes and/or systems and/or other technologies describedherein can be effected (e.g., hardware, software, and/or firmware), andthat the preferred vehicle will vary with the context in which theprocesses and/or systems and/or other technologies are deployed. Forexample, if an implementer determines that speed and accuracy areparamount, the implementer may opt for a mainly hardware and/or firmwarevehicle; if flexibility is paramount, the implementer may opt for amainly software implementation; or, yet again alternatively, theimplementer may opt for some combination of hardware, software, and/orfirmware.

The foregoing detailed description has set forth various embodiments ofthe devices and/or processes via the use of block diagrams, flowcharts,and/or examples. Insofar as such block diagrams, flowcharts, and/orexamples contain one or more functions and/or operations, it will beunderstood by those within the art that each function and/or operationwithin such block diagrams, flowcharts, or examples can be implemented,individually and/or collectively, by a wide range of hardware, software,firmware, or virtually any combination thereof. In one embodiment,several portions of the subject matter described herein may beimplemented via Application Specific Integrated Circuits (ASICs), FieldProgrammable Gate Arrays (FPGAs), digital signal processors (DSPs), orother integrated formats. However, those skilled in the art willrecognize that some aspects of the embodiments disclosed herein, inwhole or in part, can be equivalently implemented in integratedcircuits, as one or more computer programs running on one or morecomputers (e.g., as one or more programs running on one or more computersystems), as one or more programs running on one or more processors(e.g., as one or more programs running on one or more microprocessors),as firmware, or as virtually any combination thereof, and that designingthe circuitry and/or writing the code for the software and or firmwarewould be well within the skill of one of skill in the art in light ofthis disclosure. In addition, those skilled in the art will appreciatethat the mechanisms of the subject matter described herein are capableof being distributed as a program product in a variety of forms, andthat an illustrative embodiment of the subject matter described hereinapplies regardless of the particular type of signal bearing medium usedto actually carry out the distribution. Examples of a signal bearingmedium include, but are not limited to, the following: a recordable typemedium such as a flexible disk, a hard disk drive (HDD), a Compact Disc(CD), a Digital Video Disk (DVD), a digital tape, a computer memory,etc.; and a transmission type medium such as a digital and/or an analogcommunication medium (e.g., a fiber optic cable, a waveguide, a wiredcommunications link, a wireless communication link, etc.).

Those skilled in the art will recognize that it is common within the artto describe devices and/or processes in the fashion set forth herein,and thereafter use engineering practices to integrate such describeddevices and/or processes into data processing systems. That is, at leasta portion of the devices and/or processes described herein can beintegrated into a data processing system via a reasonable amount ofexperimentation. Those having skill in the art will recognize that atypical data processing system generally includes one or more of asystem unit housing, a video display device, a memory such as volatileand non-volatile memory, processors such as microprocessors and digitalsignal processors, computational entities such as operating systems,drivers, graphical user interfaces, and applications programs, one ormore interaction devices, such as a touch pad or screen, and/or controlsystems including feedback loops and control motors (e.g., feedback forsensing position and/or velocity; control motors for moving and/oradjusting components and/or quantities). A typical data processingsystem may be implemented utilizing any suitable commercially availablecomponents, such as those typically found in datacomputing/communication and/or network computing/communication systems.

The herein described subject matter sometimes illustrates differentcomponents contained within, or connected with, different othercomponents. It is to be understood that such depicted architectures aremerely exemplary, and that in fact many other architectures can beimplemented which achieve the same functionality. In a conceptual sense,any arrangement of components to achieve the same functionality iseffectively “associated” such that the desired functionality isachieved. Hence, any two components herein combined to achieve aparticular functionality can be seen as “associated with” each othersuch that the desired functionality is achieved, irrespective ofarchitectures or intermedial components. Likewise, any two components soassociated can also be viewed as being “operably connected”, or“operably coupled”, to each other to achieve the desired functionality,and any two components capable of being so associated can also be viewedas being “operably couplable”, to each other to achieve the desiredfunctionality. Specific examples of operably couplable include but arenot limited to physically mateable and/or physically interactingcomponents and/or wirelessly interactable and/or wirelessly interactingcomponents and/or logically interacting and/or logically interactablecomponents.

With respect to the use of substantially any plural and/or singularterms herein, those having skill in the art can translate from theplural to the singular and/or from the singular to the plural as isappropriate to the context and/or application. The varioussingular/plural permutations may be expressly set forth herein for sakeof clarity.

It will be understood by those within the art that, in general, termsused herein, and especially in the appended claims (e.g., bodies of theappended claims) are generally intended as “open” terms (e.g., the term“including” should be interpreted as “including but not limited to,” theterm “having” should be interpreted as “having at least,” the term“includes” should be interpreted as “includes but is not limited to,”etc.). It will be further understood by those within the art that if aspecific number of an introduced claim recitation is intended, such anintent will be explicitly recited in the claim, and in the absence ofsuch recitation no such intent is present. For example, as an aid tounderstanding, the following appended claims may contain usage of theintroductory phrases “at least one” and “one or more” to introduce claimrecitations. However, the use of such phrases should not be construed toimply that the introduction of a claim recitation by the indefinitearticles “a” or “an” limits any particular claim containing suchintroduced claim recitation to inventions containing only one suchrecitation, even when the same claim includes the introductory phrases“one or more” or “at least one” and indefinite articles such as “a” or“an” (e.g., “a” and/or “an” should typically be interpreted to mean “atleast one” or “one or more”); the same holds true for the use ofdefinite articles used to introduce claim recitations. In addition, evenif a specific number of an introduced claim recitation is explicitlyrecited, those skilled in the art will recognize that such recitationshould typically be interpreted to mean at least the recited number(e.g., the bare recitation of “two recitations,” without othermodifiers, typically means at least two recitations, or two or morerecitations). Furthermore, in those instances where a conventionanalogous to “at least one of A, B, and C, etc.” is used, in generalsuch a construction is intended in the sense one having skill in the artwould understand the convention (e.g., “a system having at least one ofA, B, and C” would include but not be limited to systems that have Aalone, B alone, C alone, A and B together, A and C together, B and Ctogether, and/or A, B, and C together, etc.). In those instances where aconvention analogous to “at least one of A, B, or C, etc.” is used, ingeneral such a construction is intended in the sense one having skill inthe art would understand the convention (e.g., “a system having at leastone of A, B, or C” would include but not be limited to systems that haveA alone, B alone, C alone, A and B together, A and C together, B and Ctogether, and/or A, B, and C together, etc.). It will be furtherunderstood by those within the art that virtually any disjunctive wordand/or phrase presenting two or more alternative terms, whether in thedescription, claims, or drawings, should be understood to contemplatethe possibilities of including one of the terms, either of the terms, orboth terms. For example, the phrase “A or B” will be understood toinclude the possibilities of “A” or “B” or “A and B.”

Reference in the specification to “an implementation,” “oneimplementation,” “some implementations,” or “other implementations” maymean that a particular feature, structure, or characteristic describedin connection with one or more implementations may be included in atleast some implementations, but not necessarily in all implementations.The various appearances of “an implementation,” “one implementation,” or“some implementations” in the preceding description are not necessarilyall referring to the same implementations.

While certain exemplary techniques have been described and shown hereinusing various methods and systems, it should be understood by thoseskilled in the art that various other modifications may be made, andequivalents may be substituted, without departing from claimed subjectmatter. Additionally, many modifications may be made to adapt aparticular situation to the teachings of claimed subject matter withoutdeparting from the central concept described herein. Therefore, it isintended that claimed subject matter not be limited to the particularexamples disclosed, but that such claimed subject matter also mayinclude all implementations falling within the scope of the appendedclaims, and equivalents thereof.

What is claimed:
 1. A non-transitory computer-readable medium storinginstructions that, when executed, cause one or more processors toperform operations for asymmetrical encryption, comprising: determininga ciphertext control block from data to conceal one or more ciphertextcontrol parameters, the ciphertext control block based at least in parton one or more Chebyshev polynomials; and encrypting at least a portionof the data into an encrypted ciphertext block to conceal the data, theencrypted ciphertext block based at least in part on Logistic Mapping,wherein a final ciphertext includes the encrypted ciphertext block andthe ciphertext control block, and wherein the one or more ciphertextcontrol parameters are determined based at least in part on a randomlygenerated integer, a length of the portion of the data, and a count ofsubsequences that the data is divided into.
 2. The computer-readablemedium of claim 1, wherein the one or more Chebyshev polynomials arebased at least in part on a public key and a randomly generated integerinitial value associated with a variable parameter.
 3. Thecomputer-readable medium of claim 2, further comprising: modifying thevariable parameter and determining one or more subsequent Chebyshevpolynomials and a subsequent finally encrypted ciphertext block based atleast in part on the modified variable parameter, wherein the modifiedvariable parameter is modified based at least in part on the LogisticMapping; and iterating the modifying of the variable parameter until allof the data has been encrypted.
 4. A non-transitory computer-readablemedium storing instructions that, when executed, cause one or moreprocessors to perform operations for asymmetrical chaotic encryption,comprising: determining a public key based at least in part on a privatekey; determining one or more Chebyshev polynomials based at least inpart on the determined public key and a randomly generated integerinitial value associated with a variable parameter; determining aciphertext control block to conceal one or more ciphertext controlparameters based at least in part on the determined one or moreChebyshev polynomials; determining a Logistic Map value based at leastin part on the variable parameter; determining a secret key and a shiftinteger based at least in part on the Logistic Map value; determining anencrypted ordinary plaintext block portion of a plaintext file based atleast in part on the determined secret key and the determined shiftinteger; and determining a finally encrypted ciphertext block based atleast in part on the determined encrypted ordinary plaintext block, thedetermined secret key, and the determined shift integer, wherein a finalciphertext includes the determined finally encrypted ciphertext blockand the determined ciphertext control block, and wherein the one or moreciphertext control parameters are determined based at least on arandomly generated integer and a length of the plaintext file.
 5. Thecomputer-readable medium of claim 4, further comprising: updating theLogistic Map value and determining an additional finally encryptedciphertext blocks based at least in part on the updated Logistic Mapvalue, wherein the updated Logistic Map value is updated based at leastin part on the shift integer; and iterating the updating of the LogisticMap value to until a given number of plaintext blocks are encrypted. 6.The computer-readable medium of claim 4, further comprising: modifyingthe variable parameter and determining one or more subsequent Chebyshevpolynomials and a subsequent finally encrypted ciphertext block based atleast in part on the modified variable parameter, wherein the modifiedvariable parameter is modified based at least in part on the determinedshift integer; and iterating the modifying of the variable parameteruntil all of the plaintext file has been encrypted.
 7. Thecomputer-readable medium of claim 4, further comprising: updating theLogistic Map value and determining an additional finally encryptedciphertext block based at least in part on the updated Logistic Mapvalue, wherein the updated Logistic Map value is updated based at leastin part on the shift integer; iterating the updating of the Logistic Mapvalue to until a given number of plaintext blocks are encrypted;modifying the variable parameter and determining one or more subsequentChebyshev polynomials and a subsequent finally encrypted ciphertextblock based at least in part on the modified variable parameter, whereinthe modified variable parameter is modified based at least in part onthe determined shift integer; and iterating the modifying of thevariable parameter until all of the plaintext file has been encrypted.8. The computer-readable medium of claim 4, wherein the public key isdetermined based at least in part on a Chebyshev polynomial based atleast in part on the private key.
 9. The computer-readable medium ofclaim 4, wherein the private key is determined based at least in part oniterating a Logistic Map function a number of times to obtain a binarysequence.
 10. The computer-readable medium of claim 4, wherein the shiftinteger is determined based at least in part on iterating a Logistic Mapfunction a number of times to obtain a binary sequence.
 11. Thecomputer-readable medium of claim 4, wherein the finally encryptedciphertext block comprises a plaintext block portion of the plaintextfile that has been encrypted two or more times based at least in part onthe secret key.
 12. The computer-readable medium of claim 4, wherein thefinally encrypted ciphertext block comprises a plaintext block portionof the plaintext file that has been shifted two or more times based atleast in part on the shift integer.
 13. The computer-readable medium ofclaim 4, wherein the finally encrypted ciphertext block comprises aplaintext block portion of the plaintext file that has been encryptedtwo or more times based at least in part on the secret key, and where inthe plaintext block portion of the plaintext file has been shifted twoor more times based at least in part on the shift integer.
 14. Anon-transitory computer-readable medium storing instructions that, whenexecuted, cause one or more processors to perform operations forasymmetrical chaotic decryption, comprising: retrieving a Logistic mapvalue from a ciphertext control block portion of a final ciphertext,wherein the final ciphertext includes one or more ciphertext controlblocks to conceal one or more ciphertext control parameters and one ormore finally encrypted ciphertext blocks, and wherein the ciphertextcontrol parameters are determined based at least on a randomly generatedinteger and a length of a plaintext file; and retrieving a plaintextblock from the one or more finally encrypted ciphertext blocks based atleast in part on the retrieved Logistic map value.
 15. Thecomputer-readable medium of claim 14, further comprising: determining asecret key and a shift integer based at least in part on the LogisticMap value, and wherein the retrieving of the plaintext block from theone or more finally encrypted ciphertext blocks is based at least inpart on the determined secret key and shift integer.
 16. Thecomputer-readable medium of claim 14, further comprising: updating theLogistic Map value and retrieving an additional plaintext block based atleast in part on the updated Logistic Map value, wherein the updatedLogistic Map value is updated based at least in part on the shiftinteger; and iterating the updating of the Logistic Map value until agiven number of plaintext blocks are decrypted.
 17. Thecomputer-readable medium of claim 14, further comprising: iterating theretrieving of a subsequent Logistic map value from a subsequentciphertext control block until all of the plaintext file has beendecrypted.
 18. The computer-readable medium of claim 14, furthercomprising: updating the Logistic Map value and retrieving an additionalplaintext block based at least in part on the updated Logistic Mapvalue, wherein the updated Logistic Map value is updated based at leastin part on the shift integer; iterating the updating of the Logistic Mapvalue until a given number of plaintext blocks are decrypted; anditerating the retrieving of a subsequent Logistic map value from asubsequent ciphertext control block until all of the plaintext file hasbeen decrypted.
 19. The computer-readable medium of claim 14, whereinthe private key is determined based at least in part on iterating aLogistic Map function a number of times to obtain a binary sequence. 20.The computer-readable medium of claim 14, wherein the shift integer isdetermined based at least in part on iterating a Logistic Map function anumber of times to obtain a binary sequence.
 21. A computing device,comprising: a processor; and a memory including an asymmetrical chaoticencryption algorithm operatively associated with the processor, whereinthe processor is configured by the asymmetrical chaotic encryptionalgorithm to operatively enable the computing device to: determine apublic key based at least in part on a private key, determine one ormore Chebyshev polynomials based at least in part on the determinedpublic key and a randomly generated integer initial value associatedwith a variable parameter, determine a ciphertext control block toconceal one or more ciphertext control parameters based at least in parton the determined one or more Chebyshev polynomials, wherein the one ormore ciphertext control parameters are determined based at least on arandomly generated integer and a length of a plaintext file, determine aLogistic Map value based at least in part on the variable parameter,determine a secret key and a shift integer based at least in part on theLogistic Map value, determine an encrypted ordinary plaintext blockportion of the plaintext file based at least in part on the determinedsecret key and the determined shift integer, and determine a finallyencrypted ciphertext block based at least in part on determinedencrypted ordinary plaintext block, the determined secret key, and thedetermined shift integer.
 22. The computing device of claim 21, whereinthe processor is further configured by the asymmetrical chaoticencryption algorithm to operatively enabling the computing device to:update the Logistic Map value and determine an additional finallyencrypted ciphertext blocks based at least in part on the updatedLogistic Map value, wherein the updated Logistic Map value is updatedbased at least in part on the shift integer; iterate the updating of theLogistic Map value to until a given number of plaintext blocks areencrypted; modify the variable parameter and determining one or moresubsequent Chebyshev polynomials and a subsequent finally encryptedciphertext block based at least in part on the modified variableparameter, wherein the modified variable parameter is modified based atleast in part on the determined shift integer; and iterate the modifyingof the variable parameter until all of the plaintext file has beenencrypted.
 23. A non-transitory signal bearing medium comprisingmachine-readable instructions stored thereon, which, if executed by oneor more processors, operatively enable a computing device to: determinea public key based at least in part on a private key; determine one ormore Chebyshev polynomials based at least in part on the determinedpublic key and a randomly generated integer initial value associatedwith a variable parameter; determine a ciphertext control block toconceal one or more ciphertext control parameters based at least in parton the determined one or more Chebyshev polynomials, wherein the one ormore ciphertext control parameters are determined based at least on arandomly generated integer and a length of a plaintext file; determine aLogistic Map value based at least in part on the variable parameter;determine a secret key and a shift integer based at least in part on theLogistic Map value; determine an encrypted ordinary plaintext blockportion of the plaintext file based at least in part on the determinedsecret key and the determined shift integer; and determine a finallyencrypted ciphertext block based at least in part on determinedencrypted ordinary plaintext block, the determined secret key, and thedetermined shift integer.
 24. The signal bearing medium of claim 23,wherein the machine-readable instructions further operatively enable thecomputing device to: update the Logistic Map value and determine anadditional finally encrypted ciphertext blocks based at least in part onthe updated Logistic Map value, wherein the updated Logistic Map valueis updated based at least in part on the shift integer; iterate theupdating of the Logistic Map value to until a given number of plaintextblocks are encrypted; modify the variable parameter and determining oneor more subsequent Chebyshev polynomials and a subsequent finallyencrypted ciphertext block based at least in part on the modifiedvariable parameter, wherein the modified variable parameter is modifiedbased at least in part on the determined shift integer; and iterate themodifying of the variable parameter until all of the plaintext file hasbeen encrypted.